#ifndef ELIBRARYPARSER_ARTICLE_H
#define ELIBRARYPARSER_ARTICLE_H

#include "webparser.h"

QT_BEGIN_NAMESPACE
    class QWebElementCollection;
QT_END_NAMESPACE

class eLibraryParser_Article : public WebParser
{
    Q_OBJECT
    Q_PROPERTY(QStringList  AuthorNames READ GetAuthorNames WRITE SetAuthorNames)
    Q_PROPERTY(QString      JournalName READ GetJournalName WRITE SetJournalName)
    Q_PROPERTY(QString      JournalInfo READ GetJournalInfo WRITE SetJournalInfo)
    Q_PROPERTY(QString      ArticleName READ GetArticleName WRITE SetArticleName)
    Q_PROPERTY(QUrl         ArticleUrl  READ GetArticleUrl  WRITE SetArticleUrl)

public:
    eLibraryParser_Article(QStringList  AuthorNames = QStringList(),
                           QString      JournalName = QString(""),
                           QString      JournalInfo = QString(""),
                           QString      ArticleName = QString(""),
                           QUrl         ArticleUrl  = QUrl());

public:
    void SetAuthorNames (QStringList AuthorNames);
    void SetJournalName (QString     JournalName);
    void SetJournalInfo (QString     JournalInfo);
    void SetArticleName (QString     ArticleName);
    void SetArticleUrl  (QUrl        ArticleUrl);
    QStringList GetAuthorNames() const;
    QString     GetJournalName() const;
    QString     GetJournalInfo() const;
    QString     GetArticleName() const;
    QUrl        GetArticleUrl() const;

protected:
    virtual QList<ArticleStruct> ParsePage(QWebPage *pMainPage);

private:
    QStringList _AuthorNames;
    QString     _JournalName;
    QString     _JournalInfo;
    QString     _ArticleName;
    QUrl        _ArticleUrl;
};

#endif // ELIBRARYPARSER_ARTICLE_H
